// 主要用于测试zddtool中的内容是否好用
const {
    findAllIndex,
    fillZeroBinary,
    log,
    new2DArray,
    IP2String,
} = require('./zddtool.js');

// const str1 = 'eleetminicoworoep';
// const str2 = 'leetcodeisgreat';
// const str3 = 'bcbcbc';

// const checkArr = ['a', 'e', 'i', 'o', 'u'];
// console.log(`[check] ${str1}`);
// checkArr.forEach((ele) => {
//     const ret = findAllIndex(ele, str1);
//     console.log(`${ele}: ${JSON.stringify(ret)}`);
// });

// const {
//     findTheLongestSubstring,
// } = require('./quiz/findTheLongestSubstring.js');

// log(`建一个二维矩阵，有x行和n列，矩阵中的每一个元素的值，是自己x+y的和`);
// log(`0<=x,0<99`);
// const row = 40;
// const col = 40;
// let matrix_max = 18;
// let matrix = new2DArray(row, col);
// log(`新矩阵, row:${row},col${col}`);

// matrix.forEach((row, idx_x) => {
//     row.forEach((col, idx_y) => {
//         let x = idx_x;
//         let y = idx_y;
//         matrix[idx_x][idx_y] = `${x},${y},${x + y}`;
//     });
// });

// let sum = 0;
// matrix.forEach((row) => {
//     row.forEach((col) => {
//         let num = parseInt(col.split(',')[2]);
//         if (num <= matrix_max) {
//             sum += 1;
//         }
//     });
// });

// let maxShouldbe = ((1 + matrix_max + 1) * (matrix_max + 1)) / 2;

// console.table(matrix);
// log(`maxShouldbe: ${maxShouldbe}`);
// log(sum);

// 测试IP地址
// log('test IP');
// ['3.1.1.1', '2.11.2.2', '255.255.255.0'].forEach((element) => {
//     // if (element == '2.11.2.2')
//     log(`IP: ${element},Result: ${IP2String(element)}`);
// });

function testFunction(arr, fun) {
    log('[testFunction]');
    arr.forEach((ele) => {
        console.log(`test ${JSON.stringify(ele)}`);
        console.log(fun(ele));
    });
}
